using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Runtime.Serialization;
using System.Xml.Serialization;

namespace Cuahsi.Data.Interop.WaterML2.swe_20
{
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.233")]
    [Serializable()]
    [DebuggerStepThrough()]
    [DesignerCategory("code")]
    [XmlType(Namespace = "http://www.opengis.net/swe/2.0")]
    [XmlRoot("BinaryEncoding", Namespace = "http://www.opengis.net/swe/2.0", IsNullable = false)]
    [DataContract(Name = "BinaryEncodingType", Namespace = "http://www.opengis.net/swe/2.0")]
    public partial class BinaryEncodingType : AbstractEncodingType
    {

        private List<BinaryEncodingTypeMember> memberField;

        private ByteOrderType byteOrderField;

        private ByteEncodingType byteEncodingField;

        private string byteLengthField;

        public BinaryEncodingType()
        {
            this.memberField = new List<BinaryEncodingTypeMember>();
        }

        [XmlElement("member")]
        [DataMember()]
        public List<BinaryEncodingTypeMember> member
        {
            get
            {
                return this.memberField;
            }
        }

        [XmlAttribute()]
        [DataMember()]
        public ByteOrderType byteOrder
        {
            get
            {
                return this.byteOrderField;
            }
            set
            {
                this.byteOrderField = value;
            }
        }

        [XmlAttribute()]
        [DataMember()]
        public ByteEncodingType byteEncoding
        {
            get
            {
                return this.byteEncodingField;
            }
            set
            {
                this.byteEncodingField = value;
            }
        }

        [XmlAttribute(DataType = "integer")]
        [DataMember()]
        public string byteLength
        {
            get
            {
                return this.byteLengthField;
            }
            set
            {
                this.byteLengthField = value;
            }
        }
    }
}